//go:build wireinject
// +build wireinject

package val

import "github.com/google/wire"

func InitializeApp() (*App, error) {
	wire.Build(
		wire.InterfaceValue(new(ILogger), &FileLogger{}), // 注入接口的具体实现
		// 使用 wire.Value 直接注入值
		wire.Value(DatabaseConfig{
			Host:     "localhost",
			Port:     5432,
			Username: "admin",
			Password: "password",
		}),

		NewApp,
	)
	return nil, nil
}
